Skip to content

feat(GroupTheory/Commutator/Basic): ⁅H₁, H₂⁆ is a normal subgroup of H₁ ⊔ H₂#39227

Open
SnirBroshi wants to merge 1 commit into
leanprover-community:masterfrom
SnirBroshi:feature/group-theory/commutator-le-sup
Open

feat(GroupTheory/Commutator/Basic): ⁅H₁, H₂⁆ is a normal subgroup of H₁ ⊔ H₂#39227
SnirBroshi wants to merge 1 commit into
leanprover-community:masterfrom
SnirBroshi:feature/group-theory/commutator-le-sup

Conversation

@SnirBroshi
Copy link
Copy Markdown
Collaborator

@SnirBroshi SnirBroshi commented May 12, 2026

Shows ⁅H₁, H₂⁆ ≤ H₁ ⊔ H₂ and (⁅H₁, H₂⁆.subgroupOf <| H₁ ⊔ H₂).Normal, and adds _ ≤ normalizer _ ↔ lemmas to help.


(from the book "Finite Groups" by Daniel Gorenstein)

Also renames AddSubgroup.mem_normalizer_iff_conj_image_eq because to_additive now renames conj to addConj and this theorem should stay in sync with its counterpart, even though it's not using to_additive because MulAut isn't additivized.

The proofs seem pretty long for such trivial lemmas, suggestions welcome :)

Open in Gitpod

@github-actions
Copy link
Copy Markdown

PR summary 686c76b39d

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference

Declarations diff

+ _root_.AddSubgroup.le_normalizer_closure_iff
+ _root_.AddSubgroup.mem_normalizer_iff_addConj_image_eq
+ commutatorElement_mul_left_eq_conj_mul
+ commutatorElement_mul_right_eq_mul_conj
+ commutator_le_sup
+ le_normalizer_closure_iff
+ le_normalizer_iff
+ le_set_normalizer_iff
+ normal_subgroupOf_commutator_sup
- _root_.AddSubgroup.mem_normalizer_iff_conj_image_eq

You can run this locally as follows
## from your `mathlib4` directory:
git clone https://github.com/leanprover-community/mathlib-ci.git ../mathlib-ci

## summary with just the declaration names:
../mathlib-ci/scripts/pr_summary/declarations_diff.sh <optional_commit>

## more verbose report:
../mathlib-ci/scripts/pr_summary/declarations_diff.sh long <optional_commit>

The doc-module for scripts/pr_summary/declarations_diff.sh in the mathlib-ci repository contains some details about this script.


No changes to strong technical debt.
No changes to weak technical debt.

@github-actions github-actions Bot added the t-group-theory Group theory label May 12, 2026
Comment on lines +196 to +206
@[to_additive]
instance normal_subgroupOf_commutator_sup : (⁅H₁, H₂⁆.subgroupOf <| H₁ ⊔ H₂).Normal := by
refine normal_subgroupOf_of_le_normalizer <| sup_le ?_ ?_ <;>
apply le_normalizer_closure_iff.mpr <;>
rintro g hg _ ⟨g₁, hg₁, g₂, hg₂, rfl⟩
· apply (mul_mem_cancel_right <| commutator_mem_commutator hg hg₂).mp
rw [← commutatorElement_mul_left_eq_conj_mul g g₁ g₂]
exact commutator_mem_commutator (mul_mem hg hg₁) hg₂
· apply (mul_mem_cancel_left <| commutator_mem_commutator hg₁ hg).mp
rw [← mul_assoc, ← mul_assoc, ← commutatorElement_mul_right_eq_mul_conj]
exact commutator_mem_commutator hg₁ <| mul_mem hg hg₂
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would you mind splitting up the proof like this:

@[to_additive]
instance normalizer_commutator_ge_left : H₁ ≤ normalizer (⁅H₁, H₂⁆ : Subgroup G) := by
  sorry

@[to_additive]
instance normalizer_commutator_ge_right : H₂ ≤ normalizer (⁅H₁, H₂⁆ : Subgroup G) := by
  rw [commutator_comm]
  apply normalizer_commutator_ge_left

@[to_additive]
instance normal_subgroupOf_commutator_sup' : (⁅H₁, H₂⁆.subgroupOf <| H₁ ⊔ H₂).Normal :=
  normal_subgroupOf_of_le_normalizer <| sup_le
    (normalizer_commutator_ge_left H₁ H₂) (normalizer_commutator_ge_right H₁ H₂)

@tb65536 tb65536 added the awaiting-author A reviewer has asked the author a question or requested changes. label May 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

awaiting-author A reviewer has asked the author a question or requested changes. t-group-theory Group theory

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants